package com.wxy.lianxi.springbootday01.pojo;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.http.HttpStatus;
import org.springframework.web.service.invoker.HttpRequestValues;

/**
 * 定义此结果类,让前端更容易看返回的数据
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
public class R <T>{
    /**
     * code 响应码
     * message 响应信息
     * data 响应数据 由于可以放任意数据,所以是泛型.
     */
    private Integer code;
    private String message;
    private T data;

    /**
     * 由于在controller每次返回new一个此对像太麻烦,所以直接在该类里写static修饰的方法来返回
     *泛型位置为固定位置
    */
    public static <T> R<T> success(T data){
        R r = new R();
        r.setCode(HttpStatus.OK.value());
        r.setMessage("success");
        r.setData(data);
        return r;
    }

}
